1. Field of the Invention
Apparatuses and methods consistent with the present invention relate to transmitting data in a semiconductor device, and more particularly, to inverting data that is to be transmitted and transmitting the data.
2. Description of the Related Art
When semiconductor devices read or write data, transition of bits of sequentially transmitted data occurs. For example, if data “1111 0111” was previously transmitted, and data “1110 0110” is subsequently transmitted, transition of the fourth and eighth bit occurs. A frequent transition of bits increases power consumption of memory devices according to the input/output of data. Bus encoding has been used to solve the above problem. Examples of bus encoding include binary encoding, one-hot encoding, gray code encoding, bus-invert encoding, working zone encoding, limited weight coding, and the like. The bus invert encoding comprises inverting data that is subsequently transmitted to reduce a Hamming distance, which is a difference between data that was previously transmitted and the data that is subsequently transmitted, via a bus if the Hamming distance exceeds a predetermined reference amount. In more detail, if transmission of bit-wise inverted data results in less of a bus change than transmission of data that is not bit-wise inverted, the bus invert encoding transmits the bit-wise inverted data. The bus invert encoding produces a least possible change in data values in buses, which reduces a number of changes in bus lines during the transmission of data, thereby reducing a dynamic power consumption of buses.
FIGS. 1A and 1B illustrate examples of bus invert encoding in the related art. Referring to FIG. 1A, data “1001 1110” is transmitted (at time t0), and data “0111 0011” is transmitted later (at time t1:t0<t1). Comparing both sets of data, six transitions of bits occur. Referring to FIG. 1B illustrating a result of performing the bus invert encoding, inverted bits of the data that is to be transmitted is “1000 1100”. In comparison with the data “1001 1110” at time t0 and the data “1000 1100” inverted at time t1, only two transitions of bits occur. That is, bit transition is reduced to a quarter of that of FIG. 1A wherein the bus invert encoding is not performed.
Modern semiconductor memory devices operate at high speed, are capable of mass-storage, and are low-priced owing to the development of related technologies. In particular, great progress in a data processing speed of memory has been made. Therefore, when data is transmitted, bit transition of data frequently occurs due to a high frequency in data buses. Such frequent data transition causes great power consumption, making it impossible to operate an optimized system. Furthermore, a high operating frequency has a bad effect in terms of electromagnetic interference (EMI).